snippet boil "boilerplate"
	SHELL     := bash
	.SHELLFLAGS := -eu -o pipefail -c
	.ONESHELL:
	.DELETE_ON_ERROR:
	MAKEFLAGS += --warn-undefined-variables
	MAKEFLAGS += --no-builtin-rules
	.RECIPEPREFIX = >
	.DEFAULT_GOAL = help

	HOME := \${HOME}
	UNAME     = \$(shell uname -s | tr A-Z a-z)
	HOSTNAME  = \$(shell hostname)
	SOURCE    = \$(realpath \$(dir \$(realpath \$(lastword \$(MAKEFILE_LIST)))))

	BLACK     = \$(shell tput -Txterm setaf 0)
	RED       = \$(shell tput -Txterm setaf 1)
	GREEN     = \$(shell tput -Txterm setaf 2)
	YELLOW    = \$(shell tput -Txterm setaf 3)
	BLUE      = \$(shell tput -Txterm setaf 4)
	MAGENTA   = \$(shell tput -Txterm setaf 5)
	CYAN      = \$(shell tput -Txterm setaf 6)
	WHITE     = \$(shell tput -Txterm setaf 7)
	RESET     = \$(shell tput -Txterm sgr0)

	define print_mod_start
		@echo "╭── \$(1)"
	endef
	define print_mod
		@echo "│ • \$(1)"
	endef
	define print_mod_end
		@echo "╰──────"
	endef

	define link
		\$(eval REL_SRC=\$(strip \$(1)))
		\$(eval SRC=\$(SOURCE)/\$(strip \$(1)))
		\$(eval LOG="\${RED}link\${RESET} \${MAGENTA}\$(REL_SRC)\${RESET} -> \${YELLOW}\$(strip \$(2)\${RESET})")
		\$(call print_mod,"\$(LOG)")
		@ln -fns \$(SRC) \$(2)
	endef

	help: ## help
	> @grep --no-filename -E '^[a-zA-Z_0-9%-]+:.*?## .*\$\$' \$(MAKEFILE_LIST) | awk 'BEGIN {FS = ":.*?## "}; {printf "\${BLUE}%-20s\${RESET} %s\n", \$\$1, \$\$2}'
	.PHONY: help

	build: ## build
	> @echo " 🔥 Building on \${YELLOW}☯ \$(HOSTNAME)\${RESET} \${MAGENTA}(\$(UNAME))\${RESET}"
	> $(call print_mod_start,Link)
	> \$(call link,src_path,dest_path)
	> \$(call print_mod_end)
	.PHONY: build
